<?php
	class productoService
	{
		public function updateInventario($producto,$cantidad)
		{
			$inventario = Inventario::model()->findByPK($producto);
			$inventario->saldoInventario = $inventario->saldoInventario - $cantidad;
			$inventario->save();
		}
		public function getMedida($producto)
		{
			$inventario = Inventario::model()->findByPK($producto);
			return $inventario->unidadMedida->descripcion;
		}
		public function getMedidaID($producto)
		{
			$inventario = Inventario::model()->findByPK($producto);
			return $inventario->unidadMedida->idUnidad_medida;
		}
		public function getPresentacion($producto)
		{
			$inventario = Inventario::model()->findByPK($producto);
			return $inventario->presentacion;
		}
		
		public function getPrecioUnitario($producto){
			$inventario = Inventario::model()->findByPK($producto);
			return $inventario->precio_unidad;
		}
		
		public function updatePrice($id_producto, $new_price,$new_cant)
		{
			$inventario = Inventario::model()->findByPK($id_producto);
			$inventario->precio_unidad = $new_price; 
			$inventario->saldoInventario += $new_cant;
			if ($inventario->save())
			{
				return True;
			}
			else
			{
				var_dump($inventario->getErrors());
			}
		}
		public function asociarRubro($idProducto,$idRubro){
			$nuevo = new OtroRubro();
			$nuevo->producto = $idProducto;
			$nuevo->rubro = $idRubro;
			$nuevo->save();
		}
		public function eliminarRubro($idProducto,$idRubro){
			OtroRubro::model()->deleteAll('producto=:param1 and rubro=:param2',array(':param1'=>$idProducto,':param2'=>$idRubro));
			return ;
		}
		public function getRubros($id){
			$incluidos = OtroRubro::model()->findAll('producto=:param',array(':param'=>$id));
			return $incluidos;
		}
		public function getNoRubros($id){
			$no_incluidos = Rubro::model()->findAll('idRubro NOT IN (SELECT rubro FROM otro_rubro where producto=:param)',array(':param'=>$id));
			return $no_incluidos;
		}
	}
?>